package xaj.lang;

import java.util.Iterator;

public interface Map extends Constructor {
	/**
	 * Method that get field which has name "name"
	 * @param name Field name
	 * @return Field value
	 */
	public Object get(String name);
	/**
	 * Method that set the value of field which has name "name"
	 * @param name Field name
	 * @param value new Field value
	 */
	public void set(String name, Object value);
	
	/**
	 * Method for add a new field with name"name" and value "value"
	 * @param name Field name
	 * @param value Field value
	 * @return True if sucess otherwise returns false
	 */
	public boolean add(String name, Object value);
	
	/**
	 * Method to get a iterator for all fields names 
	 * @return Iterator for fields names
	 */
	public Iterator iterator();
	
}
